﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
//using System.ComponentModel.DataAnnotations;
using System.Runtime.Serialization;
using System.Drawing.Imaging;

namespace SsrsRenderStudio.KnownTypesAndModels
{
    public class CachedReport10
    {
        public Guid ExecutionId { get; set; }

        [IgnoreDataMember]
        //[ForeignKey("CachedByServer")]
        public int CachedByServerId { get; set; }

        public RenderStudioServerConfig10 CachedByServer { get; set; }

        public DateTime ExecutionTime { get; set; }

        public DateTime ExpirationTime { get; set; }

        // multipage rendered report
        //[KnownType(typeof(byte[][]))]
        //[KnownType(typeof(Metafile[][]))]
        public object[][] RenderedReport { get; set; }


        //[KnownType(typeof(string))] // email address
        //[KnownType(typeof(PrinterInfo10))]
        public object Destination { get; set; }

        //Various print options (page size, orientation)
        //Various email options (file extension, MIME)
        //[KnownType(typeof(EmailOptions))]
        //[KnownType(typeof(PrintOptions))]
        public object OutputOptions { get; set; }
    }
}
